import { Controller, Get, Post, Body, Patch, Param, Delete, Query, Put } from '@nestjs/common';
import { SpecService, SpecValueService } from './spec.service';
import { CreateSpecDto, CreateSpecValueDto } from './dto/create-spec.dto';
import { UpdateSpecDto, UpdateSpecValueDto } from './dto/update-spec.dto';
import { CreateDemoReDto } from '../demo-res/dto/create-demo-re.dto';
import { FindSpecDto } from './dto/find-spec.dto';
import { FindValueSpecDto } from './dto/findValue-spec.dto';
import { DeleteIds } from '../dto/all-dto';

@Controller('spec')
export class SpecController {
  constructor(private readonly specService: SpecService) {
  }

  @Post()
  create(@Body() createSpecDto: CreateSpecDto) {
    return this.specService.create(createSpecDto);
  }

  @Get()
  findAll(@Query() findSpecDto: FindSpecDto) {
    return this.specService.findAll(findSpecDto);
  }

  @Get('list')
  findList(@Query() findSpecDto: FindSpecDto) {
    return this.specService.findAll(findSpecDto);
  }

  @Patch(':id')
  update(@Param('id') id: string, @Body() updateSpecDto: UpdateSpecDto) {
    return this.specService.update(+id, updateSpecDto);
  }

  @Delete()
  remove(@Body() deleteIds:DeleteIds) {
    return this.specService.remove(deleteIds);
  }
}

@Controller('spec-value')
export class SpecValueController {
  constructor(private readonly specValueService: SpecValueService) {
  }
  @Get()
  findAll(@Query() findValueSpecDto: FindValueSpecDto) {
    return this.specValueService.findAll(findValueSpecDto)
  }

  @Post()
  create(@Body() createSpecValueDto: CreateSpecValueDto) {
    return this.specValueService.create(createSpecValueDto)
  }

  @Delete()
  remove(@Body() deleteIds:DeleteIds) {
    return this.specValueService.remove(deleteIds)
  }

  @Put()
  update(@Body() updateSpecValueDto: UpdateSpecValueDto) {
    return this.specValueService.update(updateSpecValueDto)
  }

}
